// pages/catagory/catagory.js
import { request } from '../../request/index.js'
import regeneratorRuntime from '../../lib/runtime/runtime'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 左侧列表分类 
    leftCateList: [],
    // 右侧具体数据
    rightInfoList: [],
    // 左侧菜单小标
    currentIndex: 0,
    // 距离顶部位置
    scrollTop: 0,
  },
  // 接收接口数据
  allList: [],
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 获取本地储存数据
    const cates = wx.getStorageSync("cates");
    if (!cates || Date.now() - cates.time > 1000 * 300) {
      this.getCateList()
    } else {
      this.allList = cates.data
      const leftCateList = this.allList.map(v => v.cat_name)
      const rightInfoList = this.allList[0].children
      this.setData({
        leftCateList,
        rightInfoList
      })
    }
    // 重置左边下标数组
    this.indexList = [0]
  },
  async getCateList() {
    const res = await request({ url: '/categories' })
    this.allList = res
    // 存放本地储存数据
    wx.setStorageSync("cates", { time: Date.now(), data: this.allList });
    const leftCateList = this.allList.map(v => v.cat_name)
    const rightInfoList = this.allList[0].children
    this.setData({
      leftCateList,
      rightInfoList,
    })
  },
  // 左侧点击事件
  handleItem(e) {
    const { index } = e.target.dataset
    const rightInfoList = this.allList[index].children
    this.setData({
      currentIndex: index,
      rightInfoList,
      scrollTop: 0
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})